Deploy to server - gitlab
當你已經準備好新修改的 code,也在 local server 測試過了,以下是透過 gitlab 進行 deployment 的流程:
- 從 staging 開一個新的 branch,一切的開發 / 修改都在這個 branch 上面修改,
- branch name 的長度有限制:ci-live-<branch-name>-dot-junyiacademy.appspot.com 總長不能超過 128 字元
- branch name: naming style 多參考團隊的命名, 例如: bugfix/issue576
- 開發過程中, commit comment 的 style 多參考其他人, 以一句簡短的話但能概括此次 commit 所做的更動為原則
- 開發完畢後 push 進入 gitlab
- 幫你的 branch 對著 staging 發 merge request
- push 到 gitlab 後, 測試即會自動進行
- pylint, API test, unit test, eslint 都要過,沒過的話要修
- 修 eslint 請參考此篇(https://junyiacademy.slab.com/posts/eslint-a1e35230)
- deploy 到 test server 上測試
- deploy 到 live server上測試
- pylint, API test, unit test, eslint 都要過,沒過的話要修
- 找人幫你 code review、修改 review 的項目
- 請 reviewer 幫你 approve merge request
- API: 左哥/Benny/先祐哥
- 前端: Benny/宜陞/正穎/左哥
- DB: 左哥/Benny/Ins/先祐哥
- merge 進入 staging
- staging 自動 deploy / 測試(每天晚上 gitlab 會自動 merge staging into master,並且自動 deploy 到 production version,時間大約 6:30~8:00)
- Deploy 到 production version 後,會在 Slack bot 會在 #lock-unlock channel 中顯示目前的 production 連結
- 到 production 再次測試自己做的功能是否 OK
- 如果 OK,請 Benny / Ins 切 version,通知相關的 stackholder
- 如果不 OK,不要切 version
- 如果有人是同一天上的,請通知他們,不要切 version